:root {

    /* Colors */
    --bg-black: #000;
    --bg-black2: #2B2B2B;
    --bg-white: #fff;
    --bg-bege: #DCDBD3;
    --bg-green-light: #BFCEC2;
    --bg-green-dark: #43695B;
    --bg-green: #009576;


}

@media (min-width: 768px) {

    .hidden-xs {
        display: inherit !important;
    }

    .visible-xs {
        display: none !important;
    }
}


@media (max-width: 768px) {
    .hidden-xs {
        display: none !important;
    }

    .visible-xs {
        display: inherit !important;
    }

    h2 {
        font-size: 28px;
    }

    p.p-g {
        font-size: 16px;
    }


    /* MENU */
    .navbar-expand-lg .navbar-collapse ul {
        gap: 0px;
        padding: 20px 0px;
    }

    .navbar-expand-lg .navbar-nav .nav-link {
        padding: 10px 0px;
    }

    button.navbar-toggler {
        border: 1px solid var(--bg-bege);
        width: 40px;
        height: 40px;
        border-radius: 100%;

        display: flex;
        align-items: center;
        gap: 6px;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .navbar-toggler:focus {
        box-shadow: none;
    }

    button.navbar-toggler span {
        height: 2px;
        background-color: var(--bg-bege);
        width: 20px;
    }
    .navbar-expand-lg .navbar-nav a.nav-link:hover {
        color: var(--bg-bege);
        background-color: transparent;
    }

    .navbar-toggler span:nth-child(1) {
        transform: rotate(45deg) translate(5px, 6px);
    }

    .navbar-toggler span:nth-child(2) {
        opacity: 0;
    }

    .navbar-toggler span:nth-child(3) {
        transform: rotate(-45deg) translate(5px, -6px);
    }



    .navbar-toggler.collapsed span:nth-child(1) {
        transform: rotate(0) translate(0);
    }

    .navbar-toggler.collapsed span:nth-child(2) {
        opacity: 1;
    }

    .navbar-toggler.collapsed span:nth-child(3) {
        transform: rotate(0) translate(0);
    }


    /* INICIAL */
    .banner h1 {
        font-size: 32px;
    }

    .banner {
        padding: 125px 0px 60px 0px;
    }

    .banner p {
        color: var(--bg-white);
        max-width: 80%;
        margin: 0 auto;
    }

    .banner .texto {
        gap: 15px;
    }

    .campo1 {
        padding-top: 60px;
        padding-bottom: 60px;
        text-align: center;
    }

    .campo1 .texto {
        gap: 15px;
        padding: 0px 15px;
    }

    .campo2 .owl-carousel .item {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .campo2 .owl-carousel .item .texto {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 15px;
        text-align: left;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        margin: 0 auto 0 0;
        margin-top: 20px;
    }

    .campo2 .owl-carousel .item .texto h2 {
        font-size: 24px;
    }

    .mb-160 {
        margin-bottom: 60px;
    }

    .campo3 .texto h2 {
        font-size: 28px;
        max-width: 80%;
    }

    .campo3 .texto {
        gap: 15px;
    }

    .campo4 .row {
        row-gap: 15px;
    }

    .campo2 .owl-theme .owl-nav.disabled+.owl-dots {
        margin-bottom: 20px;
    }

    h1 {
        font-size: 28px;
    }

    .campo5 .texto {
        gap: 15px;
    }

    .campo4 .campo img {
        max-height: 50px;
        max-width: 50px;
    }

    .campo2 .owl-carousel .owl-dots .owl-dot span {
        font-size: 14px;
        background-color: transparent;
        color: #2B2B2B;
        padding: 5px 10px;
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content;
        border-radius: 100px;
        font-weight: 700;
    }

    .campo2 .owl-carousel .owl-dots .owl-dot span {
        font-size: 12px;
    }

    .campo2 .owl-carousel .item {
        padding: 25px;
    }

    footer .links {
        margin-top: 30px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 30px;
    }

    footer .texto {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        text-align: left;
        gap: 20px;
        margin-top: 30px;
    }

    footer {
        padding: 60px 0px;
    }

    footer img {
        max-width: 250px;
    }
}